package com.zz.parkingsystem.entity;

import java.io.Serializable;
import lombok.Data;

/**
 * 支付宝配置表
 * @TableName t_alipay_set
 */
@Data
public class AlipaySet implements Serializable {
    /**
     * 支付宝配置编号
     */
    private Integer asId;

    /**
     * 第三方参数表id
     */
    private Integer paraId;

    /**
     * 参数编号
     */
    private String asNo;

    /**
     * 支付宝名称
     */
    private String asName;

    /**
     * 合作身份者id
     */
    private String asPartnerId;

    /**
     * MD5安全校验码
     */
    private String asMd5;

    /**
     * 支付方式私有密钥
     */
    private String asPrivateKeys;

    /**
     * 支付方式公有密码
     */
    private String asPublicKeys;

    /**
     * 格式化方式
     */
    private String asFormatting;

    /**
     * 字符编码
     */
    private String asCharacter;

    /**
     * 支付方式
     */
    private String asPayMethod;

    private static final long serialVersionUID = 1L;

    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        AlipaySet other = (AlipaySet) that;
        return (this.getAsId() == null ? other.getAsId() == null : this.getAsId().equals(other.getAsId()))
            && (this.getParaId() == null ? other.getParaId() == null : this.getParaId().equals(other.getParaId()))
            && (this.getAsNo() == null ? other.getAsNo() == null : this.getAsNo().equals(other.getAsNo()))
            && (this.getAsName() == null ? other.getAsName() == null : this.getAsName().equals(other.getAsName()))
            && (this.getAsPartnerId() == null ? other.getAsPartnerId() == null : this.getAsPartnerId().equals(other.getAsPartnerId()))
            && (this.getAsMd5() == null ? other.getAsMd5() == null : this.getAsMd5().equals(other.getAsMd5()))
            && (this.getAsPrivateKeys() == null ? other.getAsPrivateKeys() == null : this.getAsPrivateKeys().equals(other.getAsPrivateKeys()))
            && (this.getAsPublicKeys() == null ? other.getAsPublicKeys() == null : this.getAsPublicKeys().equals(other.getAsPublicKeys()))
            && (this.getAsFormatting() == null ? other.getAsFormatting() == null : this.getAsFormatting().equals(other.getAsFormatting()))
            && (this.getAsCharacter() == null ? other.getAsCharacter() == null : this.getAsCharacter().equals(other.getAsCharacter()))
            && (this.getAsPayMethod() == null ? other.getAsPayMethod() == null : this.getAsPayMethod().equals(other.getAsPayMethod()));
    }

    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getAsId() == null) ? 0 : getAsId().hashCode());
        result = prime * result + ((getParaId() == null) ? 0 : getParaId().hashCode());
        result = prime * result + ((getAsNo() == null) ? 0 : getAsNo().hashCode());
        result = prime * result + ((getAsName() == null) ? 0 : getAsName().hashCode());
        result = prime * result + ((getAsPartnerId() == null) ? 0 : getAsPartnerId().hashCode());
        result = prime * result + ((getAsMd5() == null) ? 0 : getAsMd5().hashCode());
        result = prime * result + ((getAsPrivateKeys() == null) ? 0 : getAsPrivateKeys().hashCode());
        result = prime * result + ((getAsPublicKeys() == null) ? 0 : getAsPublicKeys().hashCode());
        result = prime * result + ((getAsFormatting() == null) ? 0 : getAsFormatting().hashCode());
        result = prime * result + ((getAsCharacter() == null) ? 0 : getAsCharacter().hashCode());
        result = prime * result + ((getAsPayMethod() == null) ? 0 : getAsPayMethod().hashCode());
        return result;
    }

    @Override
    public String toString() {
        StringBuilder sb = new StringBuilder();
        sb.append(getClass().getSimpleName());
        sb.append(" [");
        sb.append("Hash = ").append(hashCode());
        sb.append(", asId=").append(asId);
        sb.append(", paraId=").append(paraId);
        sb.append(", asNo=").append(asNo);
        sb.append(", asName=").append(asName);
        sb.append(", asPartnerId=").append(asPartnerId);
        sb.append(", asMd5=").append(asMd5);
        sb.append(", asPrivateKeys=").append(asPrivateKeys);
        sb.append(", asPublicKeys=").append(asPublicKeys);
        sb.append(", asFormatting=").append(asFormatting);
        sb.append(", asCharacter=").append(asCharacter);
        sb.append(", asPayMethod=").append(asPayMethod);
        sb.append(", serialVersionUID=").append(serialVersionUID);
        sb.append("]");
        return sb.toString();
    }
}